#include "ListNode.h"

void TestListNode1()
{
	List* pead = ListCreate();
	
	ListPushFront(pead, 1);
	ListPushFront(pead, 2);
	ListPrint(pead);
	ListPushFront(pead, 3);
	ListPushFront(pead, 4);
	ListPrint(pead);

	ListPopFront(pead);
	ListPopFront(pead);
	ListPopFront(pead);
	ListPrint(pead);

	ListDestroy(pead);
}
void TestListNode2()
{
	List* pead = ListCreate();

	ListPushBack(pead, 10);
	ListPushBack(pead, 20);
	ListPushBack(pead, 30);
	ListPushBack(pead, 40);
	ListPrint(pead);

	ListPopBack(pead);
	ListPopBack(pead);
	ListPopBack(pead);
	ListPrint(pead);

	ListDestroy(pead);
}
void TestListNode3()
{
	List* pead = ListCreate();

	ListPushFront(pead, 1);
	ListPushFront(pead, 2);
	ListPushFront(pead, 3);
	ListPushFront(pead, 4);

	ListPushBack(pead, 10);
	ListPushBack(pead, 20);
	ListPushBack(pead, 30);
	ListPushBack(pead, 40);

	ListPrint(pead);
	
	List* pos = ListFind(pead, 20);
	ListInsert(pos, 88);
	ListInsert(pos, 66);
	ListErase(pos);
	ListPrint(pead);
}


int main()
{
	TestListNode1();
	TestListNode2();
	TestListNode3();
	return 0;
}